﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 销售订单行AITDTO DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class SOLineAITDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public SOLineAITDTOData()
		{
			initData();
		}
		private void initData()
		{
		
		
					TotalMoneyTC=0m; 
		
					TaxRate=0m; 
					TaxMoneyTC=0m; 
		
					OrderPriceTC=0m; 
					OrderByQtyTU=0m; 
					NetMoneyTC=0m; 
		
					FinallyPriceTC=0m; 
					DocLineNo= 0; 
							OrderByQtyTBU=0m; 
		
		
		
		
					OrderByQtyPU=0m; 
		
					FreeType= -1; 
				

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.SOAITDTO != null) 
			{
				this.SOAITDTO.DoSerializeKeyList(dict);
			}
	        			if (this.TU != null) 
			{
				this.TU.DoSerializeKeyList(dict);
			}
	        	        			if (this.TBU != null) 
			{
				this.TBU.DoSerializeKeyList(dict);
			}
	        	        	        			if (this.RecTerm != null) 
			{
				this.RecTerm.DoSerializeKeyList(dict);
			}
	        	        	        	        			if (this.ItemInfo != null) 
			{
				this.ItemInfo.DoSerializeKeyList(dict);
			}
	        	        	        	        	        			if (this.DescFlexField != null) 
			{
				this.DescFlexField.DoSerializeKeyList(dict);
			}
	        			if (this.Project != null) 
			{
				this.Project.DoSerializeKeyList(dict);
			}
	        			if (this.PU != null) 
			{
				this.PU.DoSerializeKeyList(dict);
			}
	        	        			if (this.TaxSchedule != null) 
			{
				this.TaxSchedule.DoSerializeKeyList(dict);
			}
	        	        
		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public SOLineAITDTOData(  ufida.u9.ait.openapi.SOAITDTOData sOAITDTO  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData tU  , System.Decimal totalMoneyTC  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData tBU  , System.Decimal taxRate  , System.Decimal taxMoneyTC  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData recTerm  , System.Decimal orderPriceTC  , System.Decimal orderByQtyTU  , System.Decimal netMoneyTC  , ufida.u9.ait.openapi.CopyOfItemInfoData itemInfo  , System.Decimal finallyPriceTC  , System.Int32 docLineNo  , System.Decimal orderByQtyTBU  , System.String memo  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexField  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData project  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData pU  , System.Decimal orderByQtyPU  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData taxSchedule  , System.Int32 freeType  , System.String requireDate  )
		{
			initData();
			this.SOAITDTO = sOAITDTO;
			this.TU = tU;
			this.TotalMoneyTC = totalMoneyTC;
			this.TBU = tBU;
			this.TaxRate = taxRate;
			this.TaxMoneyTC = taxMoneyTC;
			this.RecTerm = recTerm;
			this.OrderPriceTC = orderPriceTC;
			this.OrderByQtyTU = orderByQtyTU;
			this.NetMoneyTC = netMoneyTC;
			this.ItemInfo = itemInfo;
			this.FinallyPriceTC = finallyPriceTC;
			this.DocLineNo = docLineNo;
			this.OrderByQtyTBU = orderByQtyTBU;
			this.Memo = memo;
			this.DescFlexField = descFlexField;
			this.Project = project;
			this.PU = pU;
			this.OrderByQtyPU = orderByQtyPU;
			this.TaxSchedule = taxSchedule;
			this.FreeType = freeType;
			this.RequireDate = requireDate;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 销售订单AITDTO
		/// 销售订单行AITDTO.Misc.销售订单AITDTO
		/// </summary>
		private ufida.u9.ait.openapi.SOAITDTOData m_sOAITDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.SOAITDTOData SOAITDTO
		{
			get	
			{	
				return m_sOAITDTO ;
			}
			set	
			{	
				m_sOAITDTO = value ;	
			}
		}
			
		

		/// <summary>
		/// 销售单位
		/// 销售订单行AITDTO.Misc.销售单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_tU ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TU
		{
			get	
			{	
				return m_tU ;
			}
			set	
			{	
				m_tU = value ;	
			}
		}
			
		

		/// <summary>
		/// 价税合计
		/// 销售订单行AITDTO.Misc.价税合计
		/// </summary>
		private System.Decimal m_totalMoneyTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalMoneyTC
		{
			get	
			{	
				return m_totalMoneyTC ;
			}
			set	
			{	
				m_totalMoneyTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 销售副单位
		/// 销售订单行AITDTO.Misc.销售副单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_tBU ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TBU
		{
			get	
			{	
				return m_tBU ;
			}
			set	
			{	
				m_tBU = value ;	
			}
		}
			
		

		/// <summary>
		/// 税率
		/// 销售订单行AITDTO.Misc.税率
		/// </summary>
		private System.Decimal m_taxRate ;
		[DataMember(IsRequired=false)]
		public System.Decimal TaxRate
		{
			get	
			{	
				return m_taxRate ;
			}
			set	
			{	
				m_taxRate = value ;	
			}
		}
			
		

		/// <summary>
		/// 税额
		/// 销售订单行AITDTO.Misc.税额
		/// </summary>
		private System.Decimal m_taxMoneyTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal TaxMoneyTC
		{
			get	
			{	
				return m_taxMoneyTC ;
			}
			set	
			{	
				m_taxMoneyTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 收款条件
		/// 销售订单行AITDTO.Misc.收款条件
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_recTerm ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData RecTerm
		{
			get	
			{	
				return m_recTerm ;
			}
			set	
			{	
				m_recTerm = value ;	
			}
		}
			
		

		/// <summary>
		/// 定价
		/// 销售订单行AITDTO.Misc.定价
		/// </summary>
		private System.Decimal m_orderPriceTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal OrderPriceTC
		{
			get	
			{	
				return m_orderPriceTC ;
			}
			set	
			{	
				m_orderPriceTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 数量1
		/// 销售订单行AITDTO.Misc.数量1
		/// </summary>
		private System.Decimal m_orderByQtyTU ;
		[DataMember(IsRequired=false)]
		public System.Decimal OrderByQtyTU
		{
			get	
			{	
				return m_orderByQtyTU ;
			}
			set	
			{	
				m_orderByQtyTU = value ;	
			}
		}
			
		

		/// <summary>
		/// 未税金额
		/// 销售订单行AITDTO.Misc.未税金额
		/// </summary>
		private System.Decimal m_netMoneyTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal NetMoneyTC
		{
			get	
			{	
				return m_netMoneyTC ;
			}
			set	
			{	
				m_netMoneyTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品
		/// 销售订单行AITDTO.Misc.料品
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfItemInfoData m_itemInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfItemInfoData ItemInfo
		{
			get	
			{	
				return m_itemInfo ;
			}
			set	
			{	
				m_itemInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 最终价
		/// 销售订单行AITDTO.Misc.最终价
		/// </summary>
		private System.Decimal m_finallyPriceTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal FinallyPriceTC
		{
			get	
			{	
				return m_finallyPriceTC ;
			}
			set	
			{	
				m_finallyPriceTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 销售订单行AITDTO.Misc.行号
		/// </summary>
		private System.Int32 m_docLineNo ;
		[DataMember(IsRequired=false)]
		public System.Int32 DocLineNo
		{
			get	
			{	
				return m_docLineNo ;
			}
			set	
			{	
				m_docLineNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 数量2
		/// 销售订单行AITDTO.Misc.数量2
		/// </summary>
		private System.Decimal m_orderByQtyTBU ;
		[DataMember(IsRequired=false)]
		public System.Decimal OrderByQtyTBU
		{
			get	
			{	
				return m_orderByQtyTBU ;
			}
			set	
			{	
				m_orderByQtyTBU = value ;	
			}
		}
			
		

		/// <summary>
		/// 备注
		/// 销售订单行AITDTO.Misc.备注
		/// </summary>
		private System.String m_memo ;
		[DataMember(IsRequired=false)]
		public System.String Memo
		{
			get	
			{	
				return m_memo ;
			}
			set	
			{	
				m_memo = value ;	
			}
		}
			
		

		/// <summary>
		/// 描述性弹性域
		/// 销售订单行AITDTO.Misc.描述性弹性域
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexField
		{
			get	
			{	
				return m_descFlexField ;
			}
			set	
			{	
				m_descFlexField = value ;	
			}
		}
			
		

		/// <summary>
		/// 项目
		/// 销售订单行AITDTO.Misc.项目
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_project ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Project
		{
			get	
			{	
				return m_project ;
			}
			set	
			{	
				m_project = value ;	
			}
		}
			
		

		/// <summary>
		/// 计价单位
		/// 销售订单行AITDTO.Misc.计价单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_pU ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData PU
		{
			get	
			{	
				return m_pU ;
			}
			set	
			{	
				m_pU = value ;	
			}
		}
			
		

		/// <summary>
		/// 计价数量
		/// 销售订单行AITDTO.Misc.计价数量
		/// </summary>
		private System.Decimal m_orderByQtyPU ;
		[DataMember(IsRequired=false)]
		public System.Decimal OrderByQtyPU
		{
			get	
			{	
				return m_orderByQtyPU ;
			}
			set	
			{	
				m_orderByQtyPU = value ;	
			}
		}
			
		

		/// <summary>
		/// 税组合
		/// 销售订单行AITDTO.Misc.税组合
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_taxSchedule ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TaxSchedule
		{
			get	
			{	
				return m_taxSchedule ;
			}
			set	
			{	
				m_taxSchedule = value ;	
			}
		}
			
		

		/// <summary>
		/// 免费品类型
		/// 销售订单行AITDTO.Misc.免费品类型
		/// </summary>
		private System.Int32 m_freeType ;
		[DataMember(IsRequired=false)]
		public System.Int32 FreeType
		{
			get	
			{	
				return m_freeType ;
			}
			set	
			{	
				m_freeType = value ;	
			}
		}
			
		

		/// <summary>
		/// 交期
		/// 销售订单行AITDTO.Misc.交期
		/// </summary>
		private System.String m_requireDate ;
		[DataMember(IsRequired=false)]
		public System.String RequireDate
		{
			get	
			{	
				return m_requireDate ;
			}
			set	
			{	
				m_requireDate = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																												
		#endregion 
	} 	
}
